package com.itheima.Opertor;

public class OpertorDemo6 {
    public static void main(String[] args) {
       //三元运算符
        int a = 10;
        int b = 20;
        //三元运算符格式：条件表达式？表达式1：表达式2；true执行表达式1，false执行表达式2；          前真后假
        int max = a>b?a:b;
        System.out.println(max);

        //三元运算符可以嵌套使用
        int c = 10;
        int d = 20;
        int e = 30;
        //三元运算符格式：条件表达式？表达式1：表达式2；true执行表达式1，false执行表达式2；
        int max1 = (c>d?c:d)>e?(c>d?c:d):e;
        System.out.println(max1);

        //三元运算符的应用，找出三个数中的最大值
        //简洁但比较抽象
        int max2 = a>b?(a>c?a:c):(b>c?b:c);
        //用三元运算符直观但不简洁
        if(a>b){
            max2 = a>c?a:c;
        }else{
            max2 = b>c?b:c;
        }
        System.out.println(max2);

        System.out.println("----------------------");
        //()的优先级最高
        int result2 = (10+20)*3;
        System.out.println(result2);

        //运算符的优先级,先乘除后加减，
        int result = 10+20*3;
        System.out.println(result);

        // 双与运算级别最高，双或运算级别最低，先执行双与运算，再执行双或运算
        boolean result1 = 10>5&&20<30||40>50;
        System.out.println(result1);
    }
}
